package com.igeek.ch02;

import com.igeek.pojo.User;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @package com.igeek.ch02
 * @Description
 * @Author LittlePunk [296526219@qq.ccom]
 * @Version 2022.1
 * @Date 2023/11/18 14:36
 */

/**
 * 接口只定义抽象方法
 *
 * BindingException异常出现的原因:
 * UserMapper接口的UserMapper.xml映射没有加载出来
 * 1.UserMapper接口和相应的xml  同名且同包下
 * 2.UserMapper.xml 中的namespace命名空间的值是UserMapper接口的全类名
 * 3.UserMapper.xml 中的mapped  statement中的id值  必须和UserMapper接口的方法名相同
 * 4.UserMapper.xml 中的mapped statement 中的paramterType的值，必须是UserMapper接口方法的形参类型相同
 * 5.UserMapper.xml 中的mapped satement 中的resultType的值，必须和UserMapper接口的返回值类型相同
 * 6.SqlMapperConfig.xml 中必须添加扫描接口的路径  为接口创建代理对象
 *
 */
public interface UserMapper {

    //根据id查询用户信息
    public User selectUserById(Integer id);

    //根据名称查询用户信息
    public List<User> selectAllByName(String name);

    //插入用户信息  增删改操作 返回值可以是  boolean或者int
    //如果需要获取自动生成的键  会自动封装到当前数据的id属性
    public boolean insertUser(User user);
}
